home *** CD-ROM | disk | FTP | other *** search
/ Visual Cafe 3 / Visual Cafe 3.ISO / Vcafe / JFC.bin / beaninfo.jar / src / JRootPaneBeanInfo.java < prev    next >
Text File  |  1998-06-30  |  5KB  |  156 lines

  1. /*
  2.  * JRootPaneBeanInfoSwingBeanInfo.template    1.4 98/04/13
  3.  * 
  4.  * Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
  5.  * 
  6.  * This software is the confidential and proprietary information of Sun
  7.  * Microsystems, Inc. ("Confidential Information").  You shall not
  8.  * disclose such Confidential Information and shall use it only in
  9.  * accordance with the terms of the license agreement you entered into
  10.  * with Sun.
  11.  * 
  12.  * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
  13.  * SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  14.  * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
  15.  * PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR ANY DAMAGES
  16.  * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
  17.  * THIS SOFTWARE OR ITS DERIVATIVES.
  18.  * 
  19.  */
  20.  
  21. package com.sun.java.swing;
  22.  
  23. import com.sun.java.swing.beaninfo.SwingBeanInfo;
  24.  
  25. import java.beans.BeanDescriptor;
  26. import java.beans.PropertyDescriptor;
  27. import java.awt.Image;
  28.  
  29.  
  30. /**
  31.  * Descriptive information about the JRootPane class for Java 
  32.  * Beans application builders.  This BeanInfo class provides descriptions
  33.  * of each property, of the bean itself, it indicates which
  34.  * JRootPane properties are bound, and it provides other
  35.  * information and icons useful to builders.
  36.  * 
  37.  * @version 1.4 04/13/98
  38.  * @author <your name here>
  39.  */
  40.  
  41. public class JRootPaneBeanInfo extends SwingBeanInfo 
  42. {
  43.     private static final Class classJRootPane = com.sun.java.swing.JRootPane.class;
  44.  
  45.     /**
  46.      * @return a JRootPane BeanDescriptor
  47.      */
  48.     public BeanDescriptor getBeanDescriptor() {
  49.     return createBeanDescriptor(classJRootPane, new Object[] {
  50.                 PREFERRED, Boolean.TRUE,
  51.                 
  52.                     SHORTDESCRIPTION, "JRootPane"
  53.         }                
  54.         );                                   
  55.     }
  56.  
  57.  
  58.     /**
  59.      * Create a JRootPane PropertyDescriptor.  This is just an internal
  60.      * convenience method that allows one to leave the JRootPane.class
  61.      * argument out of the createPropertyDescriptor() class in the 
  62.      * getPropertyDescriptors() method below.
  63.      * 
  64.      * @param name the name of the property
  65.      * @param args an array java.beans.PropertyDescriptor property names and values
  66.      * @return a JRootPane PropertyDescriptor.
  67.      * @see SwingBeanInfo#createPropertyDescriptor
  68.      */
  69.     private PropertyDescriptor createPropertyDescriptor(String name, Object[] args) {
  70.     return super.createPropertyDescriptor(classJRootPane, name, args);
  71.     }
  72.  
  73.  
  74.     /**
  75.      * This method returns a list of bean PropertyDescriptors, one for each public
  76.      * property in JRootPane.  The first property is the "default" property.
  77.      *
  78.      * @return a complete list of bean PropertyDescriptors for JRootPane
  79.      * @see SwingBeanInfo
  80.      * @see java.beans.BeanInfo#getDefaultPropertyIndex
  81.      */
  82.     public PropertyDescriptor[] getPropertyDescriptors() 
  83.     {
  84.          
  85.     return new PropertyDescriptor[] {
  86.             
  87.              createPropertyDescriptor("menuBar", new Object[] {
  88.                  SHORTDESCRIPTION, "menuBar",
  89.                }
  90.              ),
  91.              
  92.              createPropertyDescriptor("accessibleContext", new Object[] {
  93.                  SHORTDESCRIPTION, "accessibleContext",
  94.                }
  95.              ),
  96.              
  97.              createPropertyDescriptor("layeredPane", new Object[] {
  98.                  SHORTDESCRIPTION, "layeredPane",
  99.                }
  100.              ),
  101.              
  102.              createPropertyDescriptor("defaultButton", new Object[] {
  103.                  SHORTDESCRIPTION, "defaultButton",
  104.                }
  105.              ),
  106.              
  107.              createPropertyDescriptor("JMenuBar", new Object[] {
  108.                  SHORTDESCRIPTION, "JMenuBar",
  109.                }
  110.              ),
  111.              
  112.              createPropertyDescriptor("validateRoot", new Object[] {
  113.                  SHORTDESCRIPTION, "validateRoot",
  114.                }
  115.              ),
  116.              
  117.              createPropertyDescriptor("glassPane", new Object[] {
  118.                  SHORTDESCRIPTION, "glassPane",
  119.                }
  120.              ),
  121.              
  122.              createPropertyDescriptor("contentPane", new Object[] {
  123.                  SHORTDESCRIPTION, "contentPane",
  124.                }
  125.              )
  126.              
  127.     };
  128.     }
  129.  
  130.  
  131.     /**
  132.      * @return an icon of the specified kind for JRootPane
  133.      */
  134.     public Image getIcon(int kind) {
  135.     Image i;
  136.     switch (kind){
  137.       case ICON_COLOR_32x32:
  138.               i = loadImage("beaninfo/images/JRootPaneColor32.gif");
  139.           return ((i == null) ? loadImage("beaninfo/images/JComponentColor32.gif") : i);
  140.       case ICON_COLOR_16x16:
  141.           i = loadImage("beaninfo/images/JRootPaneColor16.gif");
  142.           return ((i == null) ? loadImage("beaninfo/images/JComponentColor16.gif") : i);
  143.       case ICON_MONO_32x32:
  144.           i = loadImage("beaninfo/images/JRootPaneMono32.gif");
  145.           return ((i == null) ? loadImage("beaninfo/images/JComponentMono32.gif") : i);          
  146.       case ICON_MONO_16x16:
  147.           i = loadImage("beaninfo/images/JRootPaneMono16.gif");
  148.           return ((i == null) ? loadImage("beaninfo/images/JComponentMono16.gif") : i);          
  149.       default:
  150.         return super.getIcon(kind);
  151.     }
  152.     }
  153. }
  154.  
  155.  
  156.